fix(accountmanager): use defaults from configFile if setting was not present
authorJyrki Gadinger <nilsding@nilsding.org>
Tue, 17 Jun 2025 10:29:40 +0000 (12:29 +0200)
committerbackportbot[bot] <backportbot[bot]@users.noreply.github.com>
Wed, 18 Jun 2025 06:55:07 +0000 (06:55 +0000)
This prevented e.g. "launchOnSystemStartup" to be set on a fresh
installation.

Signed-off-by: Jyrki Gadinger <nilsding@nilsding.org>
src/gui/accountmanager.cpp

index 0c4e399448f85eb84eee797ed44647b4ccc5a465..4e7722e8b4a1e3e7cd4490c9ffe6f7edacf05ae2 100644 (file)
@@ -254,18 +254,18 @@ bool AccountManager::restoreFromLegacySettings()
     }
 
     ConfigFile configFile;
-    configFile.setVfsEnabled(settings->value(configFile.isVfsEnabledC).toBool());
-    configFile.setLaunchOnSystemStartup(settings->value(configFile.launchOnSystemStartupC).toBool());
-    configFile.setOptionalServerNotifications(settings->value(configFile.optionalServerNotificationsC).toBool());
-    configFile.setPromptDeleteFiles(settings->value(configFile.promptDeleteC).toBool());
-    configFile.setShowCallNotifications(settings->value(configFile.showCallNotificationsC).toBool());
-    configFile.setShowChatNotifications(settings->value(configFile.showChatNotificationsC).toBool());
-    configFile.setShowInExplorerNavigationPane(settings->value(configFile.showInExplorerNavigationPaneC).toBool());
+    configFile.setVfsEnabled(settings->value(configFile.isVfsEnabledC, configFile.isVfsEnabled()).toBool());
+    configFile.setLaunchOnSystemStartup(settings->value(configFile.launchOnSystemStartupC, configFile.launchOnSystemStartup()).toBool());
+    configFile.setOptionalServerNotifications(settings->value(configFile.optionalServerNotificationsC, configFile.optionalServerNotifications()).toBool());
+    configFile.setPromptDeleteFiles(settings->value(configFile.promptDeleteC, configFile.promptDeleteFiles()).toBool());
+    configFile.setShowCallNotifications(settings->value(configFile.showCallNotificationsC, configFile.showCallNotifications()).toBool());
+    configFile.setShowChatNotifications(settings->value(configFile.showChatNotificationsC, configFile.showChatNotifications()).toBool());
+    configFile.setShowInExplorerNavigationPane(settings->value(configFile.showInExplorerNavigationPaneC, configFile.showInExplorerNavigationPane()).toBool());
     ClientProxy().saveProxyConfigurationFromSettings(*settings);
-    configFile.setUseUploadLimit(settings->value(configFile.useUploadLimitC).toInt());
-    configFile.setUploadLimit(settings->value(configFile.uploadLimitC).toInt());
-    configFile.setUseDownloadLimit(settings->value(configFile.useDownloadLimitC).toInt());
-    configFile.setDownloadLimit(settings->value(configFile.downloadLimitC).toInt());
+    configFile.setUseUploadLimit(settings->value(configFile.useUploadLimitC, configFile.useUploadLimit()).toInt());
+    configFile.setUploadLimit(settings->value(configFile.uploadLimitC, configFile.uploadLimit()).toInt());
+    configFile.setUseDownloadLimit(settings->value(configFile.useDownloadLimitC, configFile.useDownloadLimit()).toInt());
+    configFile.setDownloadLimit(settings->value(configFile.downloadLimitC, configFile.downloadLimit()).toInt());
 
     // Try to load the single account.
     if (!settings->childKeys().isEmpty()) {